﻿using Camc.Quality.RecordTable.FormBase;
using Camc.Quality.RecordTable.FormClass;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.RecordTable.FormEntity
{
  public  class 安装距离记录表 : TableBase
    {
        public 安装距离记录表(int serialNum, Guid workStepEntityId, Guid processesEntityId, int sort, string fisrtDrawingNum, string recordElement, string toolUsed)
        {
            SerialNum = serialNum;
            WorkStepEntityId = workStepEntityId;
            ProcessesEntityId = processesEntityId;
            Sort = sort;
            FisrtDrawingNum = fisrtDrawingNum;
            RecordElement = recordElement;
            ToolUsed = toolUsed;
        }
        public override string FormName { get; protected set; } = "安装距离记录表";
        #region A4_图号
        public override string FisrtDrawingNum_DisplayName { get; protected set; } = "图号";
        public override bool FisrtDrawingNum_Show { get; protected set; } = true;
        #endregion

        #region A10_记录项目
        public override string RecordElement_DisplayName { get; protected set; } = "记录项目";
        public override bool RecordElement_Show { get; protected set; } = true;
        public override int RecordElement_Property  { get; protected set; } = 1;
        #endregion

        #region A12_所用工具编号
        public override string ToolUsed_DisplayName { get; protected set; } = "所用工具编号";
        public override bool ToolUsed_Show { get; protected set; } = true;
        public override bool ToolUsed_Enable { get; protected set; } = true;
        #endregion

        /// <summary>
        /// 记录要求
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="recordStatus"></param>
        /// <returns></returns>
        //TODO 确认安装要求的字段是B1还是B3
        public RecordRequirementsEntity SetRecordRequirements(RecordRequirementsEntity entity, string recordLocation,string recordRequire)
        {

            entity.SetRecordLocation(recordLocation, "记录位置", false, true, 1);
            entity.SetRecordRequire(recordRequire, "安装要求", false, true, 1);
            return entity;
        }

        /// <summary>
 /// 实测值
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="firstMeasuredValues"></param>
 /// <returns></returns>
        public MeasuredResultEntity SetMeasuredResult(MeasuredResultEntity entity, string firstMeasuredValues)
        {

            entity.SetFirstMeasuredValues(firstMeasuredValues, "实际安装测量值", true, true, 0);

            return entity;
        }
        /// <summary>
        /// 三检
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public InspectionSignatureEntity SetInspectionSignature(InspectionSignatureEntity entity)
        {
            entity.InspectionSignatureName = "三检";
            entity.SetFirstOperator(null, "操作者", true, true, 0, null, "操作者操作时间", true, true, 0);
            entity.SetSecondOperator(null, "互检者", true, true, 0, null, "互检者操作时间", true, true, 0);
            entity.SetThirdOperator(null, "检验员", true, true, 0, null, "检验员操作时间", true, true, 0);
            return entity;
        }
    }
}
